package br.com.assessoriaesportiva.controller;

import java.io.Serializable;

import javax.faces.view.ViewScoped;
import javax.inject.Inject;
import javax.inject.Named;

import br.com.assessoriaesportiva.model.Usuario;
import br.com.assessoriaesportiva.regradenegocio.RegraNegocioException;
import br.com.assessoriaesportiva.service.UsuarioService;
import br.com.assessoriaesportiva.util.JsfUtil;
import br.com.assessoriaesportiva.util.UtilMessage;

@Named
@ViewScoped
public class UsuarioController implements Serializable {
	private static final long serialVersionUID = 1L;
	@Inject 
	private UsuarioService service;
	private Usuario user;
	private final String Session ="usuario";
	
	public UsuarioController() {
		Usuario usuario = (Usuario) JsfUtil.getSessionValue(Session);
		if(usuario == null){
			this.user = new Usuario();
		}else{
			this.user = usuario;
			JsfUtil.removeFromSession(Session);
		}
			
	}
	
	public String salvar(){
		try {
			service.novoUsuario(user);
			String[] msg = {user.getNome()};
			UtilMessage.addInfoMessageBundle("ok.msg.salvo", msg);
			return "pm:second?transition=slidefade";
		} catch (RegraNegocioException e) {
			UtilMessage.addErroMenssage("", e.getMessage());
			return null;
		}
	}
	
	public Usuario getUser() {
		return user;
	}
	
	public void teste(){
		UtilMessage.addErroMenssage(null, "dsfsdf");
	}
}
